const webpack = require('webpack')
const config = require('../config/webpack.prod')
// const config = require('../config/webpack.dev')

const compiler = webpack(config)

/**
 * 错误处理
 *  1. 致命的配置错误
 *  2. 编译出错: 缺失模块、语法出错
 *  3. 编译警告
 */

// 如果这个函数作为webpack函数的第二个参数，就可以不用手动执行compiler.run了，webpack会帮你手动执行这些的
const runCallback = (err, stats) => {
  if (err) {
    // 1. 配置出错
    console.error('[ERROR]: ', '配置出错;', err.stack || err)
    if (err.details) {
      console.error(err.details);
    }
    return
  }

  console.log(stats.toString({ colors: true, cachedAssets: false }))
}

compiler.run(runCallback)


